<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>算术运算符和算术表达式</title>
</head>
<body>
    <script>


        var num1 = 17
        var num2 = 3
        var s1 = num1 + num2 // 相加
        console.log(num1 + '+' + num2 + '=' + s1);
        var s2 = num1 - num2 // 相减
        console.log(num1 + '-' + num2 + '=' + s2);
        var s3 = num1 * num2 // 相乘
        console.log(num1 + '*' + num2 + '=' + s3);
        var s4 = num1 / num2 // 相除
        // 两个整型数据相除，结果会保留小数
        console.log(num1 + '/' + num2 + '=' + s4);
        var s5 = num1 % num2 // 取余 17除以3商5余数是2
        console.log(num1 + '%' + num2 + '=' + s5);
        // --------------------------------------

        console.log('练习：算出一个4位数，每一位数之和的结果');

        var num3 = 1234
        var qian = parseInt(num3 / 1000)
        var bai = parseInt(num3 % 1000 / 100)
        var shi = parseInt(num3 % 100 / 10)
        var ge = num3 % 10
        var s6 = qian + bai + shi + ge
        console.log(num3+ '中，每一位数之和是：'+ s6);

        // --------------------------------------

        // parseInt() 函数的作用是：将数据强制转为整型，会去掉所有的小数点后的所有。

        // 算术表达式的简写

        var num4 = 10 
        num4 = num4 + 5 
        console.log(num4);
        num4 += 5  // 就是 num4 = num4 + 5 的简写
        console.log(num4);
        num4 -= 5
        console.log(num4);
        num4 *= 5
        console.log(num4);
        num4 /= 5
        console.log(num4);
        num4 %= 5  // 就是num4 = num4 % 5 的简写
        console.log(num4); 

        // 如果是加1或者减1，还有更简写的。

        var num5 = 5
        num5 += 1
        console.log(num5);
        num5++      // 就是num5 += 1 的简写，而num5 += 1 又是 num5 = num5 + 1 的简写
        console.log(num5);
        ++num5      // ++ 可以写在变量名的后面 也可以在变量名的前面
        console.log(num5);
        num5--      // 就是num5 -= 1 的简写
        console.log(num5);
        --num5
        console.log(num5);

        console.log('----------------------------');
        
        var num6 = 5
        console.log(num6++); // ++在后，是先返回原值，再自身加1
        console.log(num6);
        console.log(++num6); // ++在前，是先自身加1，再返回值
        console.log(num6);
        console.log(num6--); // --在后，是先返回原值，再自身减1
        console.log(num6);
        console.log(--num6); // --在前，是先自身减1，再返回值
        console.log(num6);
        console.log('---------------------');
        var num7 = 10 
        //          10    +    12    -  11   +  11   -   10
        var num8 = num7++ + ++num7 - --num7 + num7-- -num7
        console.log(num8);


    </script>
</body>
</html>